1. Field of the Invention
The present invention relates generally to a robot cleaner, a robot cleaning system, and a method for controlling the same, and more particularly, to a robot cleaner, a robot cleaning system, and a method for controlling the same that is capable of controlling the driving mechanism of the robot cleaner by using an upper image photographed while the robot cleaner is driving.
2. Description of the Related Art
A general robot cleaner determines the extent of a cleaning area by driving an outer track of the cleaning area that is surrounded by a wall or an obstacle by using an ultrasonic sensor disposed on a main body, and plans a cleaning path to clean the determined cleaning area. After that, the robot cleaner drives wheels to run the planned cleaning path by calculating a driving distance and a current position from a signal detected through a sensor for sensing the degree of rotation of the wheels and their rotation angle. However, the above generally used method for recognizing the position produces an error between the driving distance and the moved position calculated from the signal by the sensor and the real driving distance and the position that may be caused by the slip of the wheels and/or the bend of a floor while the robot cleaner is driving along a cleaning path. The more the cleaner drives, the more the position recognition errors may accumulate. Accordingly, the cleaner driven by the accumulated position recognition error can deviate significantly from the planned cleaning path. Consequently, some area might not be cleaned, and the cleaner can perform cleaning several times for other areas. Accordingly, cleaning efficiency and precision can diminish.
An object of the present invention is to provide a robot cleaner, a robot cleaning system, and a method for controlling the robot capable of effectively performing a commanded cleaning by compensating to correct error in a computed driving track, and for precisely recognizing the current position of the robot cleaner.
The above object is accomplished by providing a robot cleaner that comprises: a driving unit for driving a plurality of wheels; an upper camera disposed on a main body in order to photograph an upper image perpendicular to a direction of driving of the robot cleaner; and a controller for controlling the driving unit to allow the robot cleaner to drive within a cleaning area defined by a predetermined driving pattern, and compensating the driving path when needed by analyzing the image photographed by the upper camera.
It is preferable that the controller controls the driving unit to drive within the cleaning area defined by the predetermined driving pattern and creates and stores an image map in regard to the upper area from the image photographed by the upper camera, when operating a mode for mapping a cleaning area. In addition, the controller recognizes the position of the robot cleaner by comparing the stored image map and a current image input from the upper camera, so as to enable the control of the driving unit corresponding to a target driving path from a recognized position.
Moreover, the controller creates the image map when a signal for cleaning is transmitted.
It is preferable that a front camera is disposed on the main body for photographing an image opposite to the direction of driving of the robot cleaner. The controller creates the image map by three-dimensionally mapping the upper image photographed from the upper camera and the front image photographed by the front camera.
The controller may divide the image map into a plurality of small cells, each cell having a predetermined size, may determine a special feature on one or more of the divided small cells, and set up the determined special feature as a standard coordinate point for recognizing the position of the robot cleaner. The special feature includes at least one element taken from a bulb, a fire sensor, a fluorescent lamp, and a speaker.
The controller extracts a linear element from the image photographed from the upper camera while the robot cleaner is driving, and may compensate the driving path by using the extracted linear element.
To accomplish the above object, the robot cleaning system includes: a driving unit for driving a plurality of wheels; a robot cleaner having an upper camera disposed on a main body for photographing an upper image perpendicular to a driving direction; and a remote controller for wirelessly communicating with the robot cleaner. The remote controller controls the robot cleaner to drive within a cleaning area defined by a predetermined driving pattern, and may compensate the driving path by analyzing the image transmitted after being photographed by the upper camera.
It is preferable that the remote controller controls the robot cleaner to drive within the cleaning area defined by the predetermined driving pattern and creates an image map in regard to the upper area from the image photographed by the upper camera, when operating a mode for mapping a cleaning area. In addition, the remote controller recognizes the position of the robot cleaner by comparing the stored image map and a current image transmitted from the robot cleaner after being photographed from the upper camera and controls a cleaning path of the robot cleaner to perform the desired target work from a recognized position, after receiving a signal for cleaning.
It is advisable that the remote controller creates the image map at the start of the cleaning operation and before a signal for cleaning is transmitted.
A front camera is disposed on the main body in order to photograph a front image as viewed in a direction parallel to the direction of driving of the robot cleaner. Moreover, the remote controller creates the image map by three-dimensionally mapping the upper image and the front image transmitted from the robot cleaner after being photographed from the upper camera and the front camera, respectively.
It is recommended that the remote controller extracts a linear element from the image transmitted after being photographed from the upper camera and arranges a driving track by using the extracted linear element, when controlling the driving of the robot cleaner.
To accomplish the above object, the method for controlling the robot cleaner according to the present invention comprises the steps of: creating and storing an image map of an upper area located above an area to be cleaned, form an image photographed by the upper camera by driving the robot cleaner according to a predetermined driving pattern within a cleaning area; recognizing a position of the robot cleaner by comparing an image of the recorded image map and a current image photographed from the upper camera, and calculating a driving path from the recognized position to a target position, upon receiving a signal for cleaning; and driving the robot cleaner according to the calculated driving path.
According to another aspect of the present invention, the method for controlling the robot cleaner comprises the steps of: creating a cleaning area map by driving the robot cleaner within a cleaning area and storing the map; calculating a driving path corresponding to a cleaning command, upon receiving a signal for cleaning; driving the robot cleaner according to the calculated driving path; and arranging the driving path by analyzing an image photographed from the upper camera.
It is preferable that the driving path arranging step extracts a linear element from the image photographed from the upper camera, and arranges the driving path by using the extracted linear element.